#!/bin/bash 

# 参数判断支持库

# 传入参数的验证
function parameVerifyNotEmpty()
{
#    echo "参数验证...."
    for((i=1;i<=$#;i++));
    do 
        eval j=\$$i
        str=${j}
#        echo "参数 i=${i} value= ${str}"

        if [ -z "${str}" ]; then 
            echo "参数验证为空！ ${FUNCNAME} i=${i} error...STRING is empty"
            exit 1
        fi
    done
}

# 传入参数的验证,第一个参数为错误报错信息
function parameVerifyNotEmpty_errorInfo()
{
#    echo "参数验证...."
    errorInfo=${1}
    for((i=1;i<=$#;i++));
    do 
        eval j=\$$i
        str=${j}

#        if [ ${i} != 1 ];then
#            echo "参数 i=${i} value= ${str}"
#        fi
        
        if [ -z "${str}" ]; then 
            echo "参数验证为空！ ${FUNCNAME} i= error...STRING is empty" 
            echo "${errorInfo}"
            exit 1
        fi
    done
}

# 判断执行结果
# 参数1:执行结果
# 参数2:执行方法名
# 参考：  resultVerifySuccess_result "$?" "${FUNCNAME}"
function resultVerifySuccess_result()
{
#    echo "开始验证执行结果...."
    result="${1}"
    functionName="${2}"
    # 判断执行结果
    if [ ${result} != "0" ]; then
        echo "error... ${functionName} 执行结果失败 ....请解决问题!"
        exit 1
#    else
#        echo "success...  ${result}  ${functionName}"
    fi
}

# 判断执行结果
# 参数1:执行结果
# 参数2:执行方法名
# 参数3:错误信息
# 参考：  resultVerifySuccess_result_errorInfo "$?" "${FUNCNAME}" "错误信息."
function resultVerifySuccess_result_errorInfo()
{
#    echo "开始验证执行结果...."
    result="${1}"
    functionName="${2}"
    errorInfo="${3}"
    # 判断执行结果
    if [ ${result} != "0" ]; then
        echo "error... ${functionName} 执行结果失败 ....请解决问题!"
        echo "错误信息： ${errorInfo}"
        exit 1
#    else
#        echo "success...  ${result}  ${functionName}"
    fi
}
# 用户路径
function userPath()
{
    echo "/Users/$USER"
}